home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 26 / Cream of the Crop 26.iso / program / ddj0897.zip / ISERVER.ZIP / VBISAPI.ZIP / DLL.CLS next >
Text File  |  1997-01-09  |  2KB  |  75 lines

  1. VERSION 1.0 CLASS
  2. BEGIN
  3.   MultiUse = -1  'True
  4. END
  5. Attribute VB_Name = "DLL"
  6. Attribute VB_GlobalNameSpace = False
  7. Attribute VB_Creatable = True
  8. Attribute VB_PredeclaredId = False
  9. Attribute VB_Exposed = True
  10. Option Explicit
  11. Private Sub svrerr(server As Object, errstr As String)
  12. server.WriteLine "Error: " & errstr
  13. server.statcode = 400
  14. server.retval = 4
  15. End Sub
  16.  
  17. Private Sub Win(server As Object)
  18. server.WriteLine "<HTML><HEAD><TITLE>I Win</TITLE></HEAD><BODY>"
  19. server.WriteLine "I got it right!</BODY></HTML>"
  20. End Sub
  21.  
  22. Private Sub GuessAgain(server As Object, Hi As Long, Lo As Long)
  23. Dim servername As Variant
  24. Dim script As Variant
  25. server.WriteLine "<HTML><HEAD><TITLE>HiLo!</TITLE></HEAD><BODY>"
  26. server.WriteLine "My guess is " & CInt((Hi + Lo) / 2) & "<P>"
  27. server.ServerVariable "SERVER_NAME", servername
  28. server.ServerVariable "SCRIPT_NAME", script
  29. server.WriteLine "Is my guess:<P>"
  30. server.Write "<FORM ACTION=http://" & servername
  31. server.Write "/" & script
  32. server.WriteLine "?HILO.DLL:Guess+HI=" & Hi & "+LO=" & Lo & " METHOD=POST>"
  33. server.WriteLine "High <INPUT TYPE=RADIO NAME=ANSWER VALUE=HI><P>"
  34. server.WriteLine "Correct <INPUT TYPE=RADIO NAME=ANSWER VALUE=OK><P>"
  35. server.WriteLine "Low <INPUT TYPE=RADIO NAME=ANSWER VALUE=LO><P>"
  36. server.WriteLine "<INPUT TYPE=SUBMIT>"
  37. server.WriteLine "</FORM>"
  38. server.WriteLine "</BODY></HTML>"
  39. End Sub
  40.  
  41. Public Sub Guess(server As Object)
  42.  Dim Guess As Long
  43.  Dim Hi As Long
  44.  Dim Lo As Long
  45.  Dim pos As Long
  46.  Dim ans As String
  47.  pos = InStr(1, server.QueryString, "HI=", vbTextCompare)
  48.  If pos = 0 Then
  49.    svrerr server, "Can't find HI"
  50.    Exit Sub
  51.  End If
  52.  Hi = Val(Mid(server.QueryString, pos + 3))
  53.  pos = InStr(1, server.QueryString, "LO=", vbTextCompare)
  54.  If pos = 0 Then
  55.    svrerr server, "Can't find LO"
  56.    Exit Sub
  57.  End If
  58.  Lo = Val(Mid(server.QueryString, pos + 3))
  59.  If server.ContentLength = 0 Then
  60.   GuessAgain server, Hi, Lo
  61.  Else
  62.   Guess = (Hi + Lo) / 2
  63.   pos = InStr(1, server.Content, "ANSWER=", vbTextCompare)
  64.   If pos = 0 Then
  65.     svrerr server, "Form error"
  66.     Exit Sub
  67.   End If
  68.  ans = Mid(server.Content, pos + 7, 2)
  69.  If ans = "OK" Then Win server
  70.  If ans = "LO" Then GuessAgain server, Hi, Guess
  71.  If ans = "HI" Then GuessAgain server, Guess, Lo
  72.  If ans <> "OK" And ans <> "LO" And ans <> "HI" Then svrerr server, "Unknown Response: " & server.Content
  73. End If
  74. End Sub
  75.